Number portability in a communications system

ABSTRACT

A communication system is disclosed comprised of a signaling processor and an interworking system. The signaling processor receives a call setup message including a called number, processes the called number to transmit a query, receives a response message responsive to the query that includes number portability information for the called number, processes the number portability information to select an identifier for routing, and transmits a control message that identifies the identifier. The interworking system receives a user communication and the control message, converts the user communication into communications that include the identifier, and transfers the communications that include the identifier.

RELATED APPLICATIONS

This application is a continuation of application Ser. No. 10/077,544filed on Feb. 15, 2000, now U.S. Pat. No. 6,639,912, which is acontinuation of application Ser. No. 09/272,131 filed on Mar. 19, 1999,now U.S. Pat. No. 6,795,440, which is a continuation of application Ser.No. 08/755,268 filed on Nov. 22, 1996, now U.S. Pat. No. 6,014,378,filed on Nov. 22, 1996. U.S. Pat. Nos. 6,639,912, 6,795,440, and6,014,378 are hereby incorporated by reference into this application.

FEDERALLY SPONSERED RESEARCH OR DEVELOPMENT

Not applicable

MICROFICHE APPENDIX

Not applicable

BACKGROUND OF THE INVENTION

1. Field of the Invention

The invention relates to tandem systems for circuit-based traffic, andin particular, to tandem systems that use Asynchronous Transfer Mode(ATM) systems to interconnect various circuit-based networks or networkelements.

2. Description of the Prior Art

The tandem function is used to concentrate and switch telecommunicationstraffic in between networks, switches, and other network elements. FIG.1 depicts the conventional tandem switch known in the prior art. Thethree switches and the network element are all connected to the tandemswitch. The tandem switch allows the switches to connect to the networkelement without a direct connection between the switches and the networkelement. It also allows each switch to connect to every other switchwithout direct connections between all of the switches. This savings inconnections and trunking is one of the benefits of tandem switches.Additionally, the connection between the tandem switch and the networkelement uses bandwidth more efficiently because traffic has beenconcentrated at the tandem switch. In addition, a tandem switch can beused to concentrate traffic that is going to other networks.

The connections shown on FIG. 1 as solid lines are circuit-basedconnections. Circuit-based connections are well known in the art withsome examples being Time Division Multiplex (TDM) connections, such asDS3, DS1, DS0, E3, E1, or E0 connections. DS3 connections carry acontinuous transport signal at 44.736 megabits per second. DS1connections carry a continuous transport signal at 1.544 megabits persecond. DS0 connections carry a continuous transport signal at 64kilobits per second. As is known, DS3 connections can be comprised ofmultiple DS1 connections, which in turn, can be comprised of multipleDS0 connections. The signaling links shown as dashed lines may beconventional signaling links with examples being SS7, C7, or ISDN links.The switches shown on FIG. 1 are well known circuit switches withexamples being the Nortel DMS-250 or the Lucent 5ESS. The tandem switchis typically comprised of a circuit switch that interconnects DS3, DS1,and DS0 connections.

Those skilled in the art are aware of the costs and efficienciesassociated with tandem switches. Many networks cannot justifyimplementing a tandem switch until the efficiencies gained through thetandem function outweigh the cost of the tandem switch. This isproblematic because inefficiencies must be tolerated until they outweighthe high cost of the tandem switch. At present, there is a need for amore affordable and efficient tandem switching system.

SUMMARY

The invention includes a telecommunications tandem system and method forproviding a tandem connection for a call. The tandem system comprises afirst ATM interworking multiplexer, an ATM cross-connect, a second ATMinterworking multiplexer, and a signaling processor. The first ATMinterworking multiplexer receives circuit-based traffic for the callfrom a first circuit-based connection. It converts the circuit-basedtraffic into ATM cells that identify a selected virtual connection basedon a first control message and transmits the ATM cells. The ATMcross-connect is connected to the first ATM interworking multiplexer. Itreceives the ATM cells from the first ATM interworking multiplexer androutes the ATM cells based on the selected virtual connection identifiedin the ATM cells. The second ATM interworking multiplexer that isconnected to the ATM cross-connect. It receives the ATM cells from theATM cross-connect. It converts the ATM cells into the circuit-basedtraffic and transmits the circuit-based traffic over a selected secondcircuit-based connection based on a second control message. Thesignaling processor is linked to the first ATM multiplexer and thesecond ATM multiplexer. It receives and processes telecommunicationssignaling for the call to select the virtual connection and the secondcircuit-based connection. It provides the first control message for thecall to the first ATM multiplexer and provides the second controlmessage for the call to the second ATM multiplexer. The first controlmessage identifies the first circuit-based connection and the selectedvirtual connection. The second control message identifies the selectedvirtual connection and the selected second circuit-based connection. Asa result, the tandem connection is formed by the first circuit basedconnection, the selected virtual connection, and the selected secondcircuit based connection.

In various other embodiments. The tandem system provides the tandemconnection for the call between: two circuit-based switches, twocircuit-based switching networks, a circuit-based switch and an enhancedservices platform, an incumbent local exchange carrier and a competitivelocal exchange carrier, a first competitive local exchange carrier and asecond competitive local exchange carrier, a local exchange carrier andan interexchange carrier, for the call, a local exchange carrier and aninternational carrier, an interexchange carrier and an internationalcarrier.

In various embodiments, the signaling processor selects the connectionsfor the call based on: a call set-up message, a Signaling System #7Initial Address Message (SS7 IAM), a called number, an NPA, an NXX, anNPA-NXX, a destination network, a transit network selection code, acarrier identification parameter, a nature of address, a network elementidentifier, a local route number, or a trunk group.

In various embodiments, numerous physical limitations may alsodistinguish the invention. The first ATM multiplexer and the second ATMmultiplexer may be incorporated into a single ATM multiplexer. The firstcontrol message and the second control message may be incorporated intoa single control message. The first ATM multiplexer, the second ATMmultiplexer, and the ATM cross-connect may be physically located at thesame site. The signaling processor, the first ATM multiplexer, thesecond ATM multiplexer, and the ATM cross-connect may be physicallylocated at the same site.

Advantageously, the invention provides a tandem function between circuitbased systems without the need for a circuit-based switch or an ATMswitch. The invention is capable of accomplishing various forms oftandem routing without requiring a full set of complex routing logic.For example, the invention may only analyze a destination network codeto select a tandem connection and could omit the need to analyze acalled number. The invention is also capable of providing an ATMinterface.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a version of the prior art.

FIG. 2 is a block diagram of a version of the present invention.

FIG. 3 is a block diagram of a version of the present invention.

FIG. 4 is a block diagram of a version of the present invention.

FIG. 5 is a logic diagram of a version of the present invention.

FIG. 6 is a logic diagram of a version of the invention.

FIG. 7 is a message sequence chart of a version of the invention.

FIG. 8 is a block diagram of a version of the present invention.

FIG. 9 is a logic diagram of a version of the present invention.

FIG. 10 is a logic diagram of a version of the present invention.

FIG. 11 depicts an example of the trunk circuit table.

FIG. 12 depicts an example of the trunk group table.

FIG. 13 depicts an example of the exception table.

FIG. 14 depicts an example of the ANI table.

FIG. 15 depicts an example of the called number table.

FIG. 16 depicts an example of the routing table.

FIG. 17 depicts an example of the treatment table.

FIG. 18 depicts an example of the message table.

DETAILED DESCRIPTION

For purposes of clarity, the term “connection” will be used to refer tothe transmission media used to carry user traffic. The term “link” willbe used to refer to the transmission media used to carry signaling orcontrol messages. FIG. 1 depicts a prior art tandem switch. Shown arethree switches connected to a network element through the tandem switch.The switches are also connected to each other through the tandem switch.The use of the tandem switch avoids the need for direct connectionsbetween all of these switches and the network element. The use of thetandem switch also avoids the need for direct connections between theswitches themselves. Typically, the tandem switch is comprised of aconventional circuit switch.

FIG. 2 depicts a version of the present invention. Shown is tandemsystem 200, switch 210, switch 212, switch 214, and network element 290.Switches 210, 212, and 214 are connected to tandem system 200 byconnections 220, 222, and 224 respectively. Switches 210, 212, and 214are linked to tandem system 200 by links 230, 232, and 234 respectively.As stated above, the “connections” carry telecommunications traffic andthe “links” carry telecommunications signaling and control messages.Tandem system 200 is also connected and linked to network element 290 byconnection 226 and link 236.

Those skilled in the art are aware that large networks have many morecomponents than are shown. For example, there would typically be amultitude of switches and network elements connected through tandemsystem 200. Those skilled in the art will appreciate that a signaltransfer point (STP) could be used to transfer signaling among thevarious components. The number of components shown on FIG. 2 has beenrestricted for clarity. The invention is fully applicable to a largenetwork.

Switches 210, 212, and 214 could be conventional circuit switches or anysource of circuit-based traffic. Network element 290 represents anyelement that accepts circuit-based traffic. Examples of such networkelements are switches and enhanced service platforms. Often, networkelement 290 would be in a different telecommunications network thanswitches 210, 212, and 214. Connections 220, 222, 224, and 226 could beany connection that carries circuit-based traffic. Typically, these areDS3 or DS1 connections. Typically, the common DS0 used for traditionalvoice calls is embedded within the DS3 or DS1. Links 230, 232, 234, and236 are any links that carry telecommunications signaling or controlmessages with an example being a Signaling System #7 (SS7) link. Thoseskilled in the art are familiar with circuit-based traffic andsignaling.

Tandem system 200 is a set of components that are operational to acceptcircuit-based traffic and signaling, and then switch the traffic to theproper destination in accord with the signaling. An example would bewhere switch 210 handles a call destined for network element 290. Switch210 would seize a call connection within connection 220 to tandem system200. Typically, this call connection is a DS0 embedded within a DS3.Additionally, switch 210 will forward an SS7 Initial Address Message(IAM) to tandem system 200 over link 230. An IAM contains informationsuch as the dialed number, the caller's number, and the circuitidentification code (CIC). The CIC identifies the incoming DS0 inconnection 220 that is used for the call. Tandem system 200 will receiveand process the IAM and select an outgoing connection for the call. Inthis example, this would be a DS0 embedded within connection 226 tonetwork element 290. As a result, tandem system 200 will connect the DS0in connection 220 to the selected DS0 in connection 226. Additionally,tandem system 200 may forward an IAM or other message to network element290 over link 236. The same basic procedure could be used to connect acall from switch 214 to switch 212, or to connect a call from networkelement 290 to switch 214.

Tandem system 200 operates using the following technique. Tandem system200 converts the incoming circuit-based traffic into AsynchronousTransfer Mode (ATM) cells. It also processes the incoming signalingassociated with the traffic to select appropriate ATM connections forthe cells. It then routes the cells through an ATM matrix. After leavingthe matrix, the ATM cells are converted back into a circuit-based formatand provided to a selected circuit-based connection. By controlling theselections of the ATM connection and circuit-based connection, tandemsystem 200 is able to connect any inbound circuit-based connection toany outbound circuit-based connection. For example, any incoming DS0could be connected to any outbound DS0 by selecting the appropriate ATMvirtual channel and outbound DS0 within the tandem system. It should bepointed out that the use of ATM can be completely internal to tandemsystem 200 and can be transparent to the external network outside oftandem system 200. In some embodiments, tandem system 200 could alsoreceive and transmit ATM traffic in addition to circuit-based traffic.

FIG. 3 depicts tandem system 300 which is a version of the tandem systemfrom FIG. 2. Those skilled in the art will appreciate variations fromthis version that are also contemplated by the invention. Tandem system300 has connections 320, 322, 324, and 326 that correspond toconnections 220, 222, 224, and 226 of FIG. 2. Tandem system 300 haslinks 330, 332, 334, and 336 that correspond to links 230, 232, 234, and236 of FIG. 2.

Tandem system 300 is comprised of signaling processor 350, ATMinterworking multiplexer (mux) 360, mux 362, mux 364, and ATMcross-connect 370. Mux 360 is connected to cross-connect 370 byconnection 380. Mux 362 is connected to cross-connect 370 by connection382. Mux 364 is connected to cross-connect 370 by connection 384. Muxes360, 362, and 364 are linked to signaling processor 350 by link 390.

Connections 380, 382, and 384 could be any connections that support ATM.Link 390 could be any link capable of transporting control messages.Examples of such a link could be SS7 links, UDP/IP or TCP/IP overEthernet, or a bus arrangement using a conventional bus protocol.

Signaling processor 350 is any processing platform that can receive andprocess signaling to select virtual connections and circuit-basedconnections, and then generate and transmit messages to identify theselections. Various forms of signaling are contemplated by theinvention, including ISDN, SS7, and C7. A preferred embodiment of thesignaling processor is discussed in detail toward the end of thedisclosure.

Muxes 360, 362, and 364 could be any system operable to interworktraffic between ATM and non-ATM formats in accord with control messagesfrom signaling processor 350. These control messages are typicallyprovided on a call-by-call basis and identify an assignment of a DS0 toa Virtual Path Identifiers/Virtual Channel Identifier (VPI/VCI). The muxwould interwork the user traffic between the DS0 and ATM based on thecontrol messages. For example, a mux might receive a DS0 call connectionand convert this traffic into ATM cells with a VPI/VCI selected bysignaling processor. A mux may also receive ATM cells from ATMcross-connect 370. These ATM cells would be converted back into the DS0format and provided to the DS0 call connection selected by signalingprocessor 350. In some embodiments, the muxes are operational toimplement digital signal processing as instructed in control messages(typically from signaling processor 350). An example of digital signalprocessing would be echo cancellation or continuity testing. A preferredembodiment of these muxes are also discussed in detail below.

ATM cross-connect 370 is any device that provides a plurality of ATMvirtual connections between the muxes. An example of an ATMcross-connect is the NEC Model 20. In ATM, virtual connections can bedesignated by the VPI/VCI in the cell header. Cross-connect 370 can beconfigured to provide a plurality of VPI/VCI connections between themuxes. The following examples illustrate a possible configuration. VPI“A” could be provisioned from mux 360 through cross-connect 370 to mux362. VPI “B” could be provisioned from mux 360 through cross-connect 370and to mux 364. VPI “C” could be provisioned from mux 360 throughcross-connect 370 and back to mux 360. Similarly, VPIs could beprovisioned from: mux 362 to mux 360, mux 362 to mux 364, mux 362 backto mux 362, mux 364 to mux 360, mux 364 to mux 362, and mux 364 back tomux 364. In this way, the selection of the VPI essentially selects theoutgoing mux. The VCIs could be used to differentiate individual callson the VPI between two muxes.

DS3, DS1, and DS0 connections are bi-directional, whereas ATMconnections are unidirectional. This means that the bi-directionalconnections will typically require two ATM connections—one in eachdirection. This could be accomplished by assigning a companion VPI/VCIto each VPI/VCI used for call set-up. The muxes would be configured toinvoke the companion VPI/VCI in order to provide a return path for thebi-directional connection.

In some embodiments, the signaling processor, the muxes, and thecross-connect will all be physically located at the same site. Forexample, the tandem system would occupy a single site just as a circuitswitch occupies a single site. In this way, the tandem system physicallyand functionally emulates a tandem circuit switch. However, thecomponent nature of the tandem system allows it to be distributed ifdesired. For example, in alternative embodiments, the muxes and thecross-connect will be physically located at the same site, but thesignaling processor will be located at a remote site.

The system would operate as follows for a call on connection 320destined for connection 326. In this embodiment, the user informationfrom connection 324 is capable of being muxed to the DS0 level, but thisis not required in other embodiments. Additionally, SS7 signaling isused in this embodiment, but other signaling protocols, such as C7signaling, are also applicable to the invention.

A DS0 in connection 320 would be seized and an IAM related to the callwould be received over link 330. Signaling processor 350 would processthe IAM to select a VPI/VCI from mux 362 through ATM cross-connect 370to mux 364. Signaling processor 350 would also select a DS0 onconnection 326 from mux 364. These selections may be based on manyfactors with a few examples being the dialed number or the identity ofthe destination network. Signaling processor 350 would send a controlmessage over link 390 to mux 362 that identifies both the seized DS0 inconnection 320 and the selected VPI/VCI. Signaling processor 350 wouldalso send a control message over link 390 to mux 364 that identifiesboth the selected VPI/VCI and the selected DS0 in connection 326. Ifrequired, signaling processor 350 would also instruct one of the muxesto apply echo cancellation to the call. In addition, signaling processor350 would transmit any signaling required to continue call set-up overlinks 330 and 336.

Mux 362 would receive the control message from signaling processor 350identifying the seized DS0 in connection 320 and the selected VPI/VCI.Mux 362 would then convert the user information from the seized DS0 inconnection 320 into ATM cells. Mux 362 would designate the selectedVPI/VCI in the cell headers.

The virtual connection designated by the selected VPI/VCI would havebeen previously provisioned through cross-connect 370 from mux 362 tomux 364. As a result, cells with the selected VPI/VCI are transmittedover connection 382 and transferred by cross-connect 370 over connection384 to mux 364.

Mux 364 would receive a control message from signaling processor 350identifying the selected VPI/VCI and the selected DS0 in connection 326.Mux 364 will convert the ATM cells with the selected VPI/VCI in the cellheader to the selected DS0 on connection 326. Thus it can be seen thatthe selections of the VPI/VCI and DS0 by signaling processor 350 can beimplemented by muxes 362 and 364 to interconnect DS0s on connection 320and 326. These interconnections can be provided by tandem system 300 ona call by call basis.

Upon completion of the call, signaling processor 350 would receive arelease message (REL) indicating call tear-down. As a result, signalingprocessor 350 would provide tear down messages to mux 360 and mux 364.When the muxes receive these messages they would disassociate theVPI/VCI and the DS0s. This effectively terminates the call connectionand frees up the VPI/VCI and DS0s for use on other calls.

From the above description, it can be seen that call-by-call controlover the VPI/VCIs and DS0s at the ATM/DS0 interworking point is used tointerconnect the traffic from incoming DS0s to outbound DS0s. Thisinterworking point where traffic is converted is in the muxes. Unlikeconventional circuit switches, the matrix (i.e. the cross-connect) isnot controlled on a call-by-call basis. It is merely provisioned tointerconnect the muxes. This greatly simplifies the invention overconventional tandem switches. This unique combination of components andcontrol provides many advantages for a tandem system. It can typicallybe produced at lower costs than a conventional tandem circuit switch.The components of the tandem system are readily scaleable, so that thesize of the tandem system can be tailored to specific traffic demandsand upgraded as needed. As will be seen, the signaling processor is notintegrated within a switch. This allows it to be tailored more readilyto a given task. For example, robust and expensive routing logic may notbe required.

FIG. 4 depicts tandem system 400. Tandem system 400 is the same astandem system 300 from FIG. 3, except that connection 486 has beenadded. For the purposes of clarity, the other reference numbers havebeen omitted. Connection 486 is ATM connection. Typically, the ATMconnection would use a transport protocol, such as SONET or DS3, butothers are also known. Connection 486 provides ATM systems with accessto tandem system 400. This access occurs through the cross-connect. Thecross-connect would be provisioned to connect particular VPI/VCIs onconnection 486 to particular muxes. In this way, non-ATM trafficentering tandem system 400 through a mux could egress the system in theATM format over connection 486. Additionally, ATM traffic could entertandem system 400 over connection 486 and egress through a mux on anon-ATM connection. In some embodiments, a signaling link from thesignaling processor to the cross-connect could be used to exchangeB-ISDN signaling between the signaling processor and the ATM systemthrough the cross-connect and connection 486. In such an embodiment,B-ISDN signaling VPI/VCIs are provisioned through the cross-connectbetween the signaling processor and the ATM system. Advantageously,tandem system 400 provides tandem access to and from ATM systems.

FIG. 5 depicts tandem system 500, switch 510, switch 512, networkelement 514, network 520, network 522, and network 524. These componentsare all known in the art and are connected and linked as shown on FIG.5. These connections and links are as described above, but for the sakeof clarity, the connections and links are not numbered. Tandem system500 operates as described above.

FIG. 5 is provided to illustrate various routing features of tandemsystem 500. Because tandem system 500 may be implemented to provide aspecific type of tandem function, the routing can be tailored to thespecific needs as well. Advantageously, this can simplify the complexityand cost of tandem system 500.

In one embodiment, tandem system 500 routes based on the area code (NPA)in a dialed number. This could be the case where switches 510 and 512provide traffic to tandem system 500 for routing to network element 514and networks 520, 522, and 524. If the network element and networks canbe differentiated for purposes of routing by area code, then tandemsystem 500 need not be configured with complex routing logic.

In one embodiment, tandem system 500 routes based on the exchange code(NXX) in a dialed number. This might be the case where switches 510 and512, network element 514, and networks 520, 522, and 524 are all in thesame area code. If these components are in the same area code, but canbe differentiated for purposes of routing by NXX, then tandem system 500need not be configured with complex routing logic. In anotherembodiment, tandem system 500 could route based on both NPA and NXX.

In some embodiments, tandem system 500 could route based on the identityof the destination network. Often, the identity of the next network inthe call path is provided in a signaling message. Tandem system 500would receive the signaling message over a signaling link an identifythe destination network. The SS7 IAM includes a transit networkselection code or a carrier identification parameter. Either of thesecodes can be used by tandem system 500 to identify the destinationnetwork and select a route to the destination network. For example,switch 512 may identify network 524 as the destination network in theIAM to tandem system 500. By reading the carrier identificationparameter in the IAM, tandem system 500 could identify network 524 asthe destination and select a route to network 524. This eliminatessignificant call processing and simplifies tandem system 500.

In some embodiments, tandem system 500 could read the nature of addressin the IAM to identify types of operator assisted and internationalcalls. Once identified, the calls could be routed to the appropriateoperator system or international carrier.

In some embodiments, the tandem system 500 may facilitate routing in anumber portability scenario. Number portability allows called parties toretain their telephone number when they move. When a network encountersone of these ported numbers, it will launch a TCAP query to a databasethat can identify the new network element that now serves the calledparty. (Typically, this new network element is the class 5 switch wherethe called party is now located.) The identity of the network element isprovided in a TCAP response back to the network element that sent thequery. The TCAP response identifies the new network element that nowserves the called party. This identification can be a local route numbercontained in the TCAP.

In the context of the invention, tandem system 500 could support numberportability. Tandem system 500 could query the database and route to theappropriate network based on the local route number in the TCAPresponse. Tandem system 500 could also receive calls from systems thathave already queried the number portability database. In this case,tandem system 500 would use the local route number in the signaling toidentify the destination network and route the call.

In some embodiments, the key to routing the call will be trunk groupselection. Trunk groups typically contain many DS0s. For example, theconnections between tandem system 500 and networks 520, 522, and 524could each be a trunk group. For calls received from switches 510 and512, tandem system 500 may only need to determine which of these threetrunk groups to use. This is because the selection of the trunk groupeffectively routes the call to the proper network. The selection of theDS0 within the selected trunk group is based on the availability withinthe selected trunk group.

FIG. 6 depicts tandem system 600, Incumbent Local Exchange Carrier(ILEC) 620, Competitive Local Exchange Carrier (CLEC) 622, CLEC 624,Interexchange Carrier (IXC) 626, IXC 628, and international carrier 630.These networks are familiar to those skilled in the art and areconnected and linked as shown. Examples of the connections are DS1, DS3or ATM connections and examples of the links are SS7 links, althoughother connections and links that apply are also known. ILECs are theestablished local networks. The CLECs are newer local networks that areallowed to compete with the established local networks. As a result,numerous LECs—either incumbent or competitive—will provide services tothe same area. These ILECs and CLECs will need access to each other.They will also need access to IXCs for long distance calls and tointernational carriers for international calls. Tandem system 600 issimilar to the tandem systems described above and it providesinterconnection among these networks. For example, all local calls fromILEC 620 to CLEC 622 may use tandem system 600 for the interconnection.Call signaling and connections would be provided to tandem system 600 byILEC 620. Tandem system would process the signaling and interconnect thecalls to CLEC 622. Tandem system 600 would typically send additionalsignaling to CLEC 622 to facilitate call completion.

Similar arrangements could be made between the other networks. Tandemsystem 600 could provide tandem access between the followingcombinations: CLEC and CLEC, CLEC and ILEC, ILEC and IXC, CLEC and IXC,IXC and IXC, ILEC and international carrier, CLEC and internationalcarrier, and IXC and international carrier. In some cases this routingcould be effected by processing the local routing number, transitnetwork selection code, or carrier identification parameter. In thisway, call processing at tandem system 600 is simplified, yet eachnetwork has access to the other networks without managing multipleconnections.

The ATM Interworking Multiplexer

FIG. 7 shows one embodiment of the mux that is suitable for the presentinvention, but other muxes that support the requirements of theinvention are also applicable. Shown are control interface 700, OC-3interface 705, DS3 interface 710, DS1 interface 715, DS0 interface 720,digital signal processor 325, ATM adaption Layer (AAL) 730, and OC-3interface 735.

Control interface 700 accepts messages from the signaling processor. Inparticular, control interface 700 provides DS0/virtual connectionassignments to AAL 730 for implementation. Control interface 700 mayaccept control messages from the signaling processor with messages forDS0 720. These messages could be to connect DS0s to: 1) other DS0s, 2)digital signal processor 725, or 3) AAL 730 (bypassing digital signalprocessor 725). Control interface 700 may accept control messages fromthe signaling processor with messages for digital signal processing 725.An example of such an message would be to disable an echo canceller on aparticular connection.

OC-3 interface 705 accepts the OC-3 format and makes the conversion toDS3. DS3 interface 710 accepts the DS3 format and makes the conversionto DS1. DS3 interface 710 can accept DS3s from OC-3 interface 705 orfrom an external connection. DS1 interface 715 accepts the DS1 formatand makes the conversion to DS0. DS1 interface 715 can accept DS1s fromDS3 interface 710 or from an external connection. DS0 interface 720accepts the DS0 format and provides an interface to digital signalprocessor 725 or AAL 730. In some embodiments, DS0 interface 420 couldbe capable of directly interconnecting particular DS0s. This could bethe case for call entering and egressing from the same mux. This wouldalso be useful to facilitate continuity testing by a switch. OC-3interface 735 is operational to accept ATM cells from AAL 730 andtransmit them, typically over the connection to a cross-connect.

Digital signal processor 725 is operational to apply various digitalprocesses to particular DS0s in response to control messages receivedthrough control interface 700. Examples of digital processing include:tone detection, tone transmission, loopbacks, voice detection, voicemessaging, echo cancellation, compression, and encryption. In someembodiments, digital signal processing 725 could handle continuitytesting. For example, the signaling processor may instruct the mux toprovide a loopback for a continuity test and or disable cancellation fora call. Digital signal processor 725 is connected to AAL 730. Asdiscussed, DS0s from DS0 interface 720 may bypass digital signalprocessing 725 and be directly coupled to AAL 730.

AAL 730 comprises both a convergence sublayer and a segmentation andreassembly (SAR) layer. AAL 730 is operational to accept the userinformation in DS0 format from DS0 interface 720 or digital signalprocessor 725 and convert the information into ATM cells. AALs are knownin the art and information about AALs is provided by InternationalTelecommunications Union (ITU) document 1.363. An AAL for voice is alsodescribed in U.S. patent application Ser. No. 08/395,745, filed on Feb.28, 1995, entitled “Cell Processing for Voice Transmission”, and herebyincorporated by reference into this application. AAL 730 obtains thevirtual path identifier (VPI) and virtual channel identifier (VCI) foreach call from control interface 700. AAL 730 also obtains the identityof the DS0 for each call (or the DS0s for an N×64 call). AAL 730 thenconverts user information between the identified DS0 and the identifiedATM virtual connection. Acknowledgments that the assignments have beenimplemented may be sent back to the signaling processor if desired.Calls with a bit rate that are a multiple of 64 kbit/second are known asN×64 calls. If desired, AAL 730 can be capable of accepting controlmessages through control interface 700 for N×64 calls.

As discussed above, the mux also handles calls in the oppositedirection—from OC-3 interface 735 to DS0 interface 720. This trafficwould have been converted to ATM by another mux and routed to OC-3 735by the cross-connect over the selected VPI/VCI. Control interface 700will provide AAL 730 with the assignment of the selected VPI/VCI to theselected outbound DS0. The mux will convert the ATM cells with theselected VPI/VCI in the cell headers into the DS0 format and provide itto the selected outbound DS0 connection.

A technique for processing VPI/VCIs is disclosed in U.S. Pat. No.5,940,393, which is hereby incorporated by reference into thisapplication.

DS0 connections are bi-directional and ATM connections are typicallyunidirectional. As a result, two virtual connections in opposingdirections will typically be required for each DS0. As discussed, thiscan be accomplished provisioning the cross-connect with companionVPI/VCIs in the opposite direction as the original VPI/VCIs. On eachcall, the muxes would be configured to automatically invoke theparticular companion VPI/VCI to provide a bidirectional virtualconnection to match the bi-directional DS0 on the call.

The Signaling Processor

The signaling processor is referred to as a call/connection manager(CCM), and it receives and processes telecommunications call signalingand control messages to select connections that establish communicationpaths for calls. In the preferred embodiment, the CCM processes SS7signaling to select connections for a call. CCM processing is describedin U.S. Pat. No. 6,013,840 which is assigned to the same assignee asthis patent application, and which is incorporated herein by reference.

In addition to selecting connections, the CCM performs many otherfunctions in the context of call processing. It not only can controlrouting and select the actual connections, but it can also validatecallers, control echo cancellers, generate billing information, invokeintelligent network functions, access remote databases, manage traffic,and balance network loads. One skilled in the art will appreciate howthe CCM described below can be adapted to operate in the aboveembodiments.

FIG. 8 depicts a version of the CCM. Other versions are alsocontemplated. In the embodiment of FIG. 8, CCM 800 controls an ATMinterworking multiplexer (mux) that performs interworking of DS0s andVPI/VCIs. However, the CCM may control other communications devices andconnections in other embodiments.

CCM 800 comprises signaling platform 810, control platform 820, andapplication platform 830. Each of the platforms 810, 820, and 830 iscoupled to the other platforms.

Signaling platform 810 is externally coupled to the SS7 systems—inparticular to systems having a message transfer part (MTP), an ISDN userpart (ISUP), a signaling connection control part (SCCP), an intelligentnetwork application part (INAP), and a transaction capabilitiesapplication part (TCAP). Control platform 820 is externally coupled to amux control, an echo control, a resource control, billing, andoperations.

Signaling platform 810 comprises MTP levels 1–3, ISUP, TCAP, SCCP, andINAP functionality and is operational to transmit and receive the SS7messages. The ISUP, SCCP, INAP, and TCAP functionality use MTP totransmit and receive the SS7 messages. Together, this functionality isreferred as an “SS7 stack,” and it is well known. The software requiredby one skilled in the art to configure an SS7 stack is commerciallyavailable, for example, from the Trillium company.

Control platform 820 is comprised of various external interfacesincluding a mux interface, an echo interface, a resource controlinterface, a billing interface, and an operations interface. The muxinterface exchanges messages with at least one mux. These messagescomprise DS0 to VPI/VCI assignments, acknowledgments, and statusinformation. The echo control interface exchanges messages with echocontrol systems. Messages exchanged with echo control systems mightinclude instructions to enable or disable echo cancellation onparticular DS0s, acknowledgments, and status information.

The resource control interface exchanges messages with externalresources. Examples of such resources are devices that implementcontinuity testing, encryption, compression, tonedetection/transmission, voice detection, and voice messaging. Themessages exchanged with resources are instructions to apply the resourceto particular DS0s, acknowledgments, and status information. Forexample, a message may instruct a continuity testing resource to providea loop back or to send and detect a tone for a continuity test.

The billing interface transfers pertinent billing information to abilling system. Typical billing information includes the parties to thecall, time points for the call, and any special features applied to thecall. The operations interface allows for the configuration and controlof CCM 800. One skilled in the art will appreciate how to produce thesoftware for the interfaces in control platform 820.

Application platform 830 is functional to process signaling informationfrom signaling platform 810 in order to select connections. The identityof the selected connections are provided to control platform 820 for themux interface. Application platform 830 is responsible for validation,translation, routing, call control, exceptions, screening, and errorhandling. In addition to providing the control requirements for the mux,application platform 830 also provides requirements for echo control andresource control to the appropriate interface of control platform 820.In addition, application platform 830 generates signaling informationfor transmission by signaling platform 810. The signaling informationmight be ISUP, INAP, or TCAP messages to external network elements.Pertinent information for each call is stored in a call control block(CCB) for the call. The CCB can be used for tracking and billing thecall.

Application platform 830 operates in general accord with the Basic CallModel (BCM) defined by the ITU. An instance of the BCM is created tohandle each call. The BCM includes an originating process and aterminating process. Application platform 830 includes a serviceswitching function (SSF) that is used to invoke the service controlfunction (SCF). Typically, the SCF is contained in a service controlpoint (SCP). The SCF is queried with TCAP or INAP messages. Theoriginating or terminating processes will access remote databases withintelligent network (IN) functionality via the SSF function.

Software requirements for application platform 830 can be produced inspecification and description language (SDL) defined in ITU-T Z.100. TheSDL can be converted into C code. Additional C and C++ code can be addedas required to establish the environment.

CCM 800 can be comprised of the above-described software loaded onto acomputer. The computer can be an Integrated Micro Products (IMP)FT-Sparc 600 using the Solaris operating system and conventionaldatabase systems. It may be desirable to utilize the multi-threadingcapability of a Unix operating system.

From FIG. 8, it can be seen that application platform 830 processessignaling information to control numerous systems and facilitate callconnections and services. The SS7 signaling is exchanged with externalcomponents through signaling platform 810, and control information isexchanged with external systems through control platform 820.Advantageously, CCM 800 is not integrated into a switch CPU that iscoupled to a switching matrix. Unlike an SCP, CCM 800 is capable ofprocessing ISUP messages independently of TCAP queries.

SS7 Message Designations

SS7 messages are well known. Designations for various SS7 messagescommonly are used. Those skilled in the art are familiar with thefollowing message designations:

ACM Address Complete Message ANM Answer Message BLO Blocking BLABlocking Acknowledgment CPG Call Progress CRG Charge Information CGBCircuit Group Blocking CGBA Circuit Group Blocking Acknowledgment GRSCircuit Group Reset GRA Circuit Group Reset Acknowledgment CGU CircuitGroup Unblocking CGUA Circuit Group Unblocking Acknowledgment CQMCircuit Group Query CQR Circuit Group Query Response CRM CircuitReservation Message CRA Circuit Reservation Acknowledgment CVT CircuitValidation Test CVR Circuit Validation Response CFN Confusion COTContinuity CCR Continuity Check Request EXM Exit Message INF InformationINR Information Request JAM Initial Address LPA Loop Back AcknowledgmentPAM Pass Along REL Release RLC Release Complete RSC Reset Circuit RESResume SUS Suspend UBL Unblocking UBA Unblocking Acknowledgment UCICUnequipped Circuit Identification Code.CCM Tables

Call processing typically entails two aspects. First, an incoming or“originating” connection is recognized by an originating call process.For example, the initial connection that a call uses to enter a networkis the originating connection in that network. Second, an outgoing or“terminating” connection is selected by a terminating call process. Forexample, the terminating connection is coupled to the originatingconnection in order to extend the call through the network. These twoaspects of call processing are referred to as the originating side ofthe call and the terminating side of the call.

FIG. 9 depicts a data structure used by application platform 830 toexecute the BCM. This is accomplished through a series of tables thatpoint to one another in various ways. The pointers are typicallycomprised of next function and next index designations. The nextfunction points to the next table, and the next index points to an entryor a range of entries in that table. The data structure has trunkcircuit table 900, trunk group table 902, exception table 904, ANI table906, called number table 908, and routing table 910.

Trunk circuit table 900 contains information related to the connections.Typically, the connections are DS0 or ATM connections. Initially, trunkcircuit table 900 is used to retrieve information about the originatingconnection. Later, the table is used to retrieve information about theterminating connection. When the originating connection is beingprocessed, the trunk group number in trunk circuit table 900 points tothe applicable trunk group for the originating connection in trunk grouptable 902.

Trunk group table 902 contains information related to the originatingand terminating trunk groups. When the originating connection is beingprocessed, trunk group table 902 provides information relevant to thetrunk group for the originating connection and typically points toexception table 904.

Exception table 904 is used to identify various exception conditionsrelated to the call that may influence the routing or other handling ofthe call. Typically, exception table 904 points to ANI table 906.Although, exception table 904 may point directly to trunk group table902, called number table 908, or routing table 910.

ANI table 906 is used to identify any special characteristics related tothe caller's number. The caller's number is commonly known as automaticnumber identification (ANI). ANI table 906 typically points to callednumber table 908. Although, ANI table 906 may point directly to trunkgroup table 902 or routing table 910.

Called number table 908 is used to identify routing requirements basedon the called number. This will be the case for standard telephonecalls. Called number table 908 typically points to routing table 910.Although, it may point to trunk group table 902.

Routing table 910 has information relating to the routing of the callfor the various connections. Routing table 910 is entered from a pointerin either exception table 904, ANI table 906, or called number table908. Routing table 910 typically points to a trunk group in trunk grouptable 902.

When exception table 904, ANI table 906, called number table 908, orrouting table 910 point to trunk group table 902, they effectivelyselect the terminating trunk group. When the terminating connection isbeing processed, the trunk group number in trunk group table 902 pointsto the trunk group that contains the applicable terminating connectionin trunk circuit table 902.

The terminating trunk circuit is used to extend the call. The trunkcircuit is typically a VPI/VCI or a DS0. Thus it can be seen that bymigrating through the tables, a terminating connection can be selectedfor a call.

FIG. 10 is an overlay of FIG. 9. The tables from FIG. 9 are present, butfor clarity, their pointers have been omitted. FIG. 10 illustratesadditional tables that can be accessed from the tables of FIG. 9. Theseinclude CCM ID table 1000, treatment table 1004, query/response table1006, and message table 1008.

CCM ID table 1000 contains various CCM SS7 point codes. It can beaccessed from trunk group table 902, and it points back to trunk grouptable 902.

Treatment table 1004 identifies various special actions to be taken inthe course of call processing. This will typically result in thetransmission of a release message (REL) and a cause value. Treatmenttable 1004 can be accessed from trunk circuit table 900, trunk grouptable 902, exception table 904, ANI table 906, called number table 908,routing table 910, and query/response table 1006.

Query/response table 1006 has information used to invoke the SCF. It canbe accessed by trunk group table 902, exception table 904, ANI table906, called number table 908, and routing table 910. It points to trunkgroup table 902, exception table 904, ANI table 906, called number table908, routing table 910, and treatment table 1004.

Message table 1008 is used to provide instructions for messages from thetermination side of the call. It can be accessed by trunk group table902 and points to trunk group table 902.

FIGS. 11–18 depict examples of the various tables described above. FIG.11 depicts an example of the trunk circuit table. Initially, the trunkcircuit table is used to access information about the originatingcircuit. Later in the processing, it is used to provide informationabout the terminating circuit. For originating circuit processing, theassociated point code is used to enter the table. This is the point codeof the switch or CCM associated with the originating circuit. Forterminating circuit processing, the trunk group number is used to enterthe table.

The table also contains the circuit identification code (CIC). The CICidentifies the circuit which is typically a DS0 or a VPI/VCI. Thus, theinvention is capable of mapping the SS7 CICs to the ATM VPI/VCI. If thecircuit is ATM, the virtual path (VP) and the virtual channel (VC) alsocan be used for identification. The group member number is a numericcode that is used for terminating circuit selection. The hardwareidentifier identifies the location of the hardware associated with theoriginating circuit. The echo canceller (EC) identification (ID) entryidentifies the echo canceller for the originating circuit.

The remaining fields are dynamic in that they are filled during callprocessing. The echo control entry is filled based on three fields insignaling messages: the echo suppresser indicator in the IAM or CRM, theecho control device indicator in the ACM or CPM, and the informationtransfer capability in the IAM. This information is used to determine ifecho control is required on the call. The satellite indicator is filledwith the satellite indicator in the IAM or CRM. It may be used to rejecta call if too many satellites are used. The circuit status indicates ifthe given circuit is idle, blocked, or not blocked. The circuit stateindicates the current state of the circuit, for example, active ortransient. The time/date indicates when the idle circuit went idle.

FIG. 12 depicts an example of the trunk group table. During originationprocessing, the trunk group number from the trunk circuit table is usedto key into the trunk table. Glare resolution indicates how a glaresituation is to be resolved. Glare is dual seizure of the same circuit.If the glare resolution entry is set to “even/odd,” the network elementwith the higher point code controls the even circuits, and the networkelement with the lower point code controls the odd circuits. If theglare resolution entry is set to “all,” the CCM controls all of thecircuits. If the glare resolution entry is set to “none,” the CCMyields. The continuity control entry lists the percent of callsrequiring continuity tests on the trunk group.

The common language location identifier (CLLI) entry is a Bellcorestandardized entry. The satellite trunk group entry indicates that thetrunk group uses a satellite. The satellite trunk group entry is used inconjunction with the satellite indicator field described above todetermine if the call has used too many satellite connections and,therefore, must be rejected. The service indicator indicates if theincoming message is from a CCM (ATM) or a switch (TDM). The outgoingmessage index (OMI) points to the message table so that outgoingmessages can obtain parameters. The associated number plan area (NPA)entry identifies the area code.

Selection sequence indicates the methodology that will be used to selecta connection. The selection sequence field designations tell the trunkgroup to select circuits based on the following: least idle, most idle,ascending, descending, clockwise, and counterclockwise. The hop counteris decremented from the IAM. If the hop counter is zero, the call isreleased. Automatic congestion control (ACC) active indicates whether ornot congestion control is active. If automatic congestion control isactive, the CCM may release the call. During termination processing, thenext function and index are used to enter the trunk circuit table.

FIG. 13 depicts an example of the exception table. The index is used asa pointer to enter the table. The carrier selection identification (ID)parameter indicates how the caller reached the network and is used forrouting certain types of calls. The following are used for this field:spare or no indication, selected carrier identification codepresubscribed and input by the calling party, selected carrieridentification code presubscribed and not input by the calling party,selected carrier identification code presubscribed and no indication ofinput by the calling party, and selected carrier identification code notpresubscribed and input by the calling party. The carrier identification(ID) indicates the network that the caller wants to use. This is used toroute calls directly to the desired network. The called party numbernature of address differentiates between 0+ calls, 1+ calls, test calls,and international calls. For example, international calls might berouted to a pre-selected international carrier.

The called party “digits from” and “digits to” focus further processingunique to a defined range of called numbers. The “digits from” field isa decimal number ranging from 1–15 digits. It can be any length and, iffilled with less than 15 digits, is filled with 0s for the remainingdigits. The “digits to” field is a decimal number ranging from 1–15digits. It can be any length and, if filled with less than 15 digits, isfilled with 9s for the remaining digits. The next function and nextindex entries point to the next table which is typically the ANI table.

FIG. 14 depicts an example of the ANI table. The index is used to enterthe fields of the table. The calling party category differentiates amongtypes of calling parties, for example, test calls, emergency calls, andordinary calls. The calling party\charge number entry nature of addressindicates how the ANI is to be obtained. The following is the table fillthat is used in this field: unknown, unique subscriber numbers, ANI notavailable or not provided, unique national number, ANI of the calledparty included, ANI of the called party not included, ANI of the calledparty includes national number, non-unique subscriber number, non-uniquenational number, non-unique international number, test line test code,and all other parameter values.

The “digits from” and “digits to” focus further processing unique to ANIwithin a given range. The data entry indicates if the ANI represents adata device that does not need echo control. Originating lineinformation (OLI) differentiates among ordinary subscriber, multipartyline, ANI failure, station level rating, special operator handling,automatic identified outward dialing, coin or non-coin call usingdatabase access, 800/888 service call, coin, prison/inmate service,intercept (blank, trouble, and regular), operator handled call, outwardwide area telecommunications service, telecommunications relay service(TRS), cellular services, private paystation, and access for privatevirtual network types of service. The next function and next index pointto the next table which is typically the called number table.

FIG. 15 depicts an example of the called number table. The index is usedto enter the table. The called number nature of address entry indicatesthe type of dialed number, for example, national versus international.The “digits from” and “digits to” entries focus further processingunique to a range of called numbers. The processing follows theprocessing logic of the “digits from” and “digits to” fields in FIG. 9.The next function and next index point to the next table which istypically the routing table.

FIG. 16 depicts an example of the routing table. The index is used toenter the table. The transit network selection (TNS) networkidentification (ID) plan indicates the number of digits to use for theCIC. The transit network selection “digits from” and “digits to” fieldsdefine the range of numbers to identify an international carrier. Thecircuit code indicates the need for an operator on the call. The nextfunction and next index entries in the routing table are used toidentify a trunk group. The second and third next function/index entriesdefine alternate routes. The third next function entry can also pointback to another set of next functions in the routing table in order toexpand the number of alternate route choices. The only other entriesallowed are pointers to the treatment table. If the routing table pointsto the trunk group table, then the trunk group table typically points toa trunk circuit in the trunk circuit table. The yield from the trunkcircuit table is the terminating connection for the call.

It can be seen from FIGS. 11–16 that the tables can be configured andrelate to one another in such a way that call processes can enter thetrunk circuit table for the originating connection and can traversethrough the tables by keying on information and using pointers. Theyield of the tables is typically a terminating connection identified bythe trunk circuit table. In some cases, treatment is specified by thetreatment table instead of a connection. If, at any point during theprocessing, a trunk group can be selected, processing may proceeddirectly to the trunk group table for terminating circuit selection. Forexample, it may be desirable to route calls from a particular ANI over aparticular set of trunk groups. In this case, the ANI table would pointdirectly to the trunk group table, and the trunk group table would pointto the trunk circuit table for a terminating circuit. The default paththrough the tables is: trunk circuit, trunk group, exception, ANI,called number, routing, trunk group, and trunk circuit.

FIG. 17 depicts an example of the treatment table. Either the index orthe message received cause number are filled and are used to enter thetable. If the index is filled and used to enter the table, the generallocation, coding standard, and cause value indicator are used togenerate an SS7 REL. The message received cause value entry is the causevalue in a received SS7 message. If the message received cause value isfilled and used to enter the table, then the cause value from thatmessage is used in a REL from the CCM. The next function and next indexpoint to the next table.

FIG. 18 depicts an example of the message table. This table allows theCCM to alter information in outgoing messages. Message type is used toenter the table, and it represents the outgoing standard SS7 messagetype. The parameter is the pertinent parameter within the outgoing SS7message. The indexes point to various entries in the trunk group tableand determine if parameters can be unchanged, omitted, or modified inthe outgoing messages.

Those skilled in the art will appreciate that variations from thespecific embodiments disclosed above are contemplated by the invention.The invention should not be restricted to the above embodiments, butshould be measured by the following claims.

1. A method of operating a signaling processor for a call having asignaling message and a user communication, the method comprising:receiving the signaling message for the call indicating a called number;processing the called number to transfer a number portability query;receiving a number portability response indicating a route number;processing the route number to select an identifier for routing the usercommunication; and transferring a control message indicating the usercommunication and the identifier to a communication system, wherein thecommunication system, in response to the control message, adds theidentifier to a header of the user communication and routes the usercommunication based on the identifier in the header.
 2. The method ofclaim 1 wherein the signaling message comprises a signaling system sevenmessage.
 3. The method of claim 1 wherein the signaling messagecomprises an integrated services digital network message.
 4. The methodof claim 1 further comprising: processing the route number from thenumber portability response to select a connection for routing the usercommunication; and transferring another control message indicating theidentifier and the connection to the communication system, wherein thecommunication system, in response to the other control message, routesthe user communication over the connection.
 5. The method of claim 1further comprising: receiving another signaling message for the callindicating call termination; in response to the other signaling message,transferring another control message indicating the call termination tothe communication system, wherein the communication system terminatesthe call in response to the other control message.
 6. The method ofclaim 1 wherein the number portability query and the number portabilityresponse comprise signaling system seven messages.
 7. The method ofclaim 1 further comprising processing the signaling message to selectecho cancellation for the call.
 8. The method of claim 1 wherein theidentifier comprises an asynchronous transfer mode virtual identifier.9. The method of claim 1 wherein the communication system receives theuser communication over a DS0 connection.
 10. The method of claim 1wherein the signaling processor is not integrated with a switch centralprocessing unit that is coupled to a switch matrix.
 11. A signalingprocessor for a call having a signaling message and a usercommunication, the method comprising: an application configured toprocess a called number from the signaling message to generate a numberportability query, process a route number from a number portabilityresponse to select an identifier for routing the user communication, andgenerate a control message indicating the user communication and theidentifier; and a platform configured to receive the signaling message,transfer the number portability query, receive the number portabilityresponse, and transfer the control message to a communication system,wherein the communication system, in response to the control message,adds the identifier to a header of the user communication and routes theuser communication based on the identifier in the header.
 12. Thesignaling processor of claim 11 wherein the signaling message comprisesa signaling system seven message.
 13. The signaling processor of claim11 wherein the signaling message comprises an integrated servicesdigital network message.
 14. The signaling processor of claim 11wherein: the application is configured to process the route number fromthe number portability response to select a connection for routing theuser communication and generate another control message indicating theidentifier and the connection; and the platform is configured totransfer the other control message to the communication system, whereinthe communication system, in response to the other control message,routes the user communication over the connection.
 15. The signalingprocessor of claim 11 wherein: the application is configured to generateanother control message indicating call termination in response toanother signaling message for the call indicating call termination; theplatform is configured to receive the other signaling message andtransfer the other control message to the communication system, whereinthe communication system terminates the call in response to the othercontrol message.
 16. The signaling processor of claim 11 wherein thenumber portability query and the number portability response comprisesignaling system seven messages.
 17. The signaling processor of claim 11wherein the application is configured to process the signaling messageto select echo cancellation for the call.
 18. The signaling processor ofclaim 11 wherein the identifier comprises an asynchronous transfer modevirtual identifier.
 19. The signaling processor of claim 11 wherein thecommunication system receives the user communication over a DS0connection.
 20. The signaling processor of claim 11 wherein thesignaling processor is not integrated with a switch central processingunit that is coupled to a switch matrix.